let name: string = "aa";
name = "222";

function add(num1: number, num2: number): number {
  return num1 + num2;
}

console.log(add(1, 2));

let str = "acb";

function isOdd(n: number): boolean {
  return n % 2 === 0;
}

// 数组
// let nums: number[] = [1, 2, 3, 4];
let num2: Array<number> = [1, 2, 3, 4];

// 对象
let u: object = {
  name: "zs",
  age: 43,
};

function printValues(obj: object) {
  const vals = Object.values(obj);
  vals.forEach((v) => console.log(v));
}

console.log(printValues(u));

// null undefined
// null和undefined是所有其他类型的子类型，他们可以赋值给其他类型（有隐患）
// 通过添加strictNullChecks:true，可以获取更严格的空类型基础
// let n: string = undefined;
